Welcome to pandas!

8.9 concat表格横向拼接(多表横向合并)

表格的横向拼接与纵向拼接基本相同,但是要横向拼接要以每个表格的行索引为拼接依据,也就是行索引标签相同的合并到一行是,有以下两种方式,

多表横向外连接

多表横向内连接

import pandas as pd

y18=pd.read_excel(r "D:\Pyobject2023\object\测试\素材\1.8.09 concat表格横向拼接(多表横向合并).xlsx","2018年" , index_col=0)

y19=pd.read_excel(r "D:\Pyobject2023\object\测试\素材\1.8.09 concat表格横向拼接(多表横向合并).xlsx","2019年", index_col=0)

y20=pd.read_excel(r "D:\Pyobject2023\object\测试\素材\1.8.09 concat表格横向拼接(多表横向合并).xlsx","2020年", index_col=0)

print (y18)

print (y19)

print (y20)

df=pd.concat(

objs={ "2018年" :y18, "2019年" :y19, "2020年" :y20},

join = "outer" ,

axis =1).reset_index()

print (df)

返回:

数量 金额
月份
1月 145 2164
2月 127 2886
5月 125 3755
6月 130 3767
4月 140 3777

数量 金额
月份
4月 126 3449
5月 128 2600
6月 127 3238
2月 132 1531
3月 130 3068

数量 金额
月份
2月 115 3908
3月 124 2437
5月 128 3292
6月 134 1235
1月 132 3792

月份 2018年 2019年 2020年
数量 金额 数量 金额 数量 金额
0 1月 145.0 2164.0 NaN NaN 132.0 3792.0
1 2月 127.0 2886.0 132.0 1531.0 115.0 3908.0
2 5月 125.0 3755.0 128.0 2600.0 128.0 3292.0
3 6月 130.0 3767.0 127.0 3238.0 134.0 1235.0
4 4月 140.0 3777.0 126.0 3449.0 NaN NaN
5 3月 NaN NaN 130.0 3068.0 124.0 2437.0